/*
 * XML Type:  SignonRequest
 * Namespace: http://ofx.net/types/2003/04
 * Java type: net.ofx.types.x2003.x04.SignonRequest
 *
 * Automatically generated - do not modify.
 */
package net.ofx.types.x2003.x04.impl;
/**
 * An XML SignonRequest(@http://ofx.net/types/2003/04).
 *
 * This is a complex type.
 */
public class SignonRequestImpl extends org.apache.xmlbeans.impl.values.XmlComplexContentImpl implements net.ofx.types.x2003.x04.SignonRequest
{
    
    public SignonRequestImpl(org.apache.xmlbeans.SchemaType sType)
    {
        super(sType);
    }
    
    private static final javax.xml.namespace.QName DTCLIENT$0 = 
        new javax.xml.namespace.QName("", "DTCLIENT");
    private static final javax.xml.namespace.QName USERID$2 = 
        new javax.xml.namespace.QName("", "USERID");
    private static final javax.xml.namespace.QName USERPASS$4 = 
        new javax.xml.namespace.QName("", "USERPASS");
    private static final javax.xml.namespace.QName USERKEY$6 = 
        new javax.xml.namespace.QName("", "USERKEY");
    private static final javax.xml.namespace.QName GENUSERKEY$8 = 
        new javax.xml.namespace.QName("", "GENUSERKEY");
    private static final javax.xml.namespace.QName LANGUAGE$10 = 
        new javax.xml.namespace.QName("", "LANGUAGE");
    private static final javax.xml.namespace.QName FI$12 = 
        new javax.xml.namespace.QName("", "FI");
    private static final javax.xml.namespace.QName SESSCOOKIE$14 = 
        new javax.xml.namespace.QName("", "SESSCOOKIE");
    private static final javax.xml.namespace.QName APPID$16 = 
        new javax.xml.namespace.QName("", "APPID");
    private static final javax.xml.namespace.QName APPVER$18 = 
        new javax.xml.namespace.QName("", "APPVER");
    
    
    /**
     * Gets the "DTCLIENT" element
     */
    public java.lang.String getDTCLIENT()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(DTCLIENT$0, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "DTCLIENT" element
     */
    public net.ofx.types.x2003.x04.DateTimeType xgetDTCLIENT()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.DateTimeType target = null;
            target = (net.ofx.types.x2003.x04.DateTimeType)get_store().find_element_user(DTCLIENT$0, 0);
            return target;
        }
    }
    
    /**
     * Sets the "DTCLIENT" element
     */
    public void setDTCLIENT(java.lang.String dtclient)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(DTCLIENT$0, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(DTCLIENT$0);
            }
            target.setStringValue(dtclient);
        }
    }
    
    /**
     * Sets (as xml) the "DTCLIENT" element
     */
    public void xsetDTCLIENT(net.ofx.types.x2003.x04.DateTimeType dtclient)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.DateTimeType target = null;
            target = (net.ofx.types.x2003.x04.DateTimeType)get_store().find_element_user(DTCLIENT$0, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.DateTimeType)get_store().add_element_user(DTCLIENT$0);
            }
            target.set(dtclient);
        }
    }
    
    /**
     * Gets the "USERID" element
     */
    public java.lang.String getUSERID()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(USERID$2, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "USERID" element
     */
    public net.ofx.types.x2003.x04.IdType xgetUSERID()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.IdType target = null;
            target = (net.ofx.types.x2003.x04.IdType)get_store().find_element_user(USERID$2, 0);
            return target;
        }
    }
    
    /**
     * True if has "USERID" element
     */
    public boolean isSetUSERID()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(USERID$2) != 0;
        }
    }
    
    /**
     * Sets the "USERID" element
     */
    public void setUSERID(java.lang.String userid)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(USERID$2, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(USERID$2);
            }
            target.setStringValue(userid);
        }
    }
    
    /**
     * Sets (as xml) the "USERID" element
     */
    public void xsetUSERID(net.ofx.types.x2003.x04.IdType userid)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.IdType target = null;
            target = (net.ofx.types.x2003.x04.IdType)get_store().find_element_user(USERID$2, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.IdType)get_store().add_element_user(USERID$2);
            }
            target.set(userid);
        }
    }
    
    /**
     * Unsets the "USERID" element
     */
    public void unsetUSERID()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(USERID$2, 0);
        }
    }
    
    /**
     * Gets the "USERPASS" element
     */
    public java.lang.String getUSERPASS()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(USERPASS$4, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "USERPASS" element
     */
    public net.ofx.types.x2003.x04.PasswordType xgetUSERPASS()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.PasswordType target = null;
            target = (net.ofx.types.x2003.x04.PasswordType)get_store().find_element_user(USERPASS$4, 0);
            return target;
        }
    }
    
    /**
     * True if has "USERPASS" element
     */
    public boolean isSetUSERPASS()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(USERPASS$4) != 0;
        }
    }
    
    /**
     * Sets the "USERPASS" element
     */
    public void setUSERPASS(java.lang.String userpass)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(USERPASS$4, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(USERPASS$4);
            }
            target.setStringValue(userpass);
        }
    }
    
    /**
     * Sets (as xml) the "USERPASS" element
     */
    public void xsetUSERPASS(net.ofx.types.x2003.x04.PasswordType userpass)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.PasswordType target = null;
            target = (net.ofx.types.x2003.x04.PasswordType)get_store().find_element_user(USERPASS$4, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.PasswordType)get_store().add_element_user(USERPASS$4);
            }
            target.set(userpass);
        }
    }
    
    /**
     * Unsets the "USERPASS" element
     */
    public void unsetUSERPASS()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(USERPASS$4, 0);
        }
    }
    
    /**
     * Gets the "USERKEY" element
     */
    public java.lang.String getUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(USERKEY$6, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "USERKEY" element
     */
    public net.ofx.types.x2003.x04.UserKeyType xgetUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.UserKeyType target = null;
            target = (net.ofx.types.x2003.x04.UserKeyType)get_store().find_element_user(USERKEY$6, 0);
            return target;
        }
    }
    
    /**
     * True if has "USERKEY" element
     */
    public boolean isSetUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(USERKEY$6) != 0;
        }
    }
    
    /**
     * Sets the "USERKEY" element
     */
    public void setUSERKEY(java.lang.String userkey)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(USERKEY$6, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(USERKEY$6);
            }
            target.setStringValue(userkey);
        }
    }
    
    /**
     * Sets (as xml) the "USERKEY" element
     */
    public void xsetUSERKEY(net.ofx.types.x2003.x04.UserKeyType userkey)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.UserKeyType target = null;
            target = (net.ofx.types.x2003.x04.UserKeyType)get_store().find_element_user(USERKEY$6, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.UserKeyType)get_store().add_element_user(USERKEY$6);
            }
            target.set(userkey);
        }
    }
    
    /**
     * Unsets the "USERKEY" element
     */
    public void unsetUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(USERKEY$6, 0);
        }
    }
    
    /**
     * Gets the "GENUSERKEY" element
     */
    public net.ofx.types.x2003.x04.BooleanType.Enum getGENUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(GENUSERKEY$8, 0);
            if (target == null)
            {
                return null;
            }
            return (net.ofx.types.x2003.x04.BooleanType.Enum)target.getEnumValue();
        }
    }
    
    /**
     * Gets (as xml) the "GENUSERKEY" element
     */
    public net.ofx.types.x2003.x04.BooleanType xgetGENUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.BooleanType target = null;
            target = (net.ofx.types.x2003.x04.BooleanType)get_store().find_element_user(GENUSERKEY$8, 0);
            return target;
        }
    }
    
    /**
     * True if has "GENUSERKEY" element
     */
    public boolean isSetGENUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(GENUSERKEY$8) != 0;
        }
    }
    
    /**
     * Sets the "GENUSERKEY" element
     */
    public void setGENUSERKEY(net.ofx.types.x2003.x04.BooleanType.Enum genuserkey)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(GENUSERKEY$8, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(GENUSERKEY$8);
            }
            target.setEnumValue(genuserkey);
        }
    }
    
    /**
     * Sets (as xml) the "GENUSERKEY" element
     */
    public void xsetGENUSERKEY(net.ofx.types.x2003.x04.BooleanType genuserkey)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.BooleanType target = null;
            target = (net.ofx.types.x2003.x04.BooleanType)get_store().find_element_user(GENUSERKEY$8, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.BooleanType)get_store().add_element_user(GENUSERKEY$8);
            }
            target.set(genuserkey);
        }
    }
    
    /**
     * Unsets the "GENUSERKEY" element
     */
    public void unsetGENUSERKEY()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(GENUSERKEY$8, 0);
        }
    }
    
    /**
     * Gets the "LANGUAGE" element
     */
    public net.ofx.types.x2003.x04.LanguageEnum.Enum getLANGUAGE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(LANGUAGE$10, 0);
            if (target == null)
            {
                return null;
            }
            return (net.ofx.types.x2003.x04.LanguageEnum.Enum)target.getEnumValue();
        }
    }
    
    /**
     * Gets (as xml) the "LANGUAGE" element
     */
    public net.ofx.types.x2003.x04.LanguageEnum xgetLANGUAGE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.LanguageEnum target = null;
            target = (net.ofx.types.x2003.x04.LanguageEnum)get_store().find_element_user(LANGUAGE$10, 0);
            return target;
        }
    }
    
    /**
     * Sets the "LANGUAGE" element
     */
    public void setLANGUAGE(net.ofx.types.x2003.x04.LanguageEnum.Enum language)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(LANGUAGE$10, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(LANGUAGE$10);
            }
            target.setEnumValue(language);
        }
    }
    
    /**
     * Sets (as xml) the "LANGUAGE" element
     */
    public void xsetLANGUAGE(net.ofx.types.x2003.x04.LanguageEnum language)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.LanguageEnum target = null;
            target = (net.ofx.types.x2003.x04.LanguageEnum)get_store().find_element_user(LANGUAGE$10, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.LanguageEnum)get_store().add_element_user(LANGUAGE$10);
            }
            target.set(language);
        }
    }
    
    /**
     * Gets the "FI" element
     */
    public net.ofx.types.x2003.x04.FinancialInstitution getFI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.FinancialInstitution target = null;
            target = (net.ofx.types.x2003.x04.FinancialInstitution)get_store().find_element_user(FI$12, 0);
            if (target == null)
            {
                return null;
            }
            return target;
        }
    }
    
    /**
     * True if has "FI" element
     */
    public boolean isSetFI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(FI$12) != 0;
        }
    }
    
    /**
     * Sets the "FI" element
     */
    public void setFI(net.ofx.types.x2003.x04.FinancialInstitution fi)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.FinancialInstitution target = null;
            target = (net.ofx.types.x2003.x04.FinancialInstitution)get_store().find_element_user(FI$12, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.FinancialInstitution)get_store().add_element_user(FI$12);
            }
            target.set(fi);
        }
    }
    
    /**
     * Appends and returns a new empty "FI" element
     */
    public net.ofx.types.x2003.x04.FinancialInstitution addNewFI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.FinancialInstitution target = null;
            target = (net.ofx.types.x2003.x04.FinancialInstitution)get_store().add_element_user(FI$12);
            return target;
        }
    }
    
    /**
     * Unsets the "FI" element
     */
    public void unsetFI()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(FI$12, 0);
        }
    }
    
    /**
     * Gets the "SESSCOOKIE" element
     */
    public java.lang.String getSESSCOOKIE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(SESSCOOKIE$14, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "SESSCOOKIE" element
     */
    public net.ofx.types.x2003.x04.SessionCookieType xgetSESSCOOKIE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.SessionCookieType target = null;
            target = (net.ofx.types.x2003.x04.SessionCookieType)get_store().find_element_user(SESSCOOKIE$14, 0);
            return target;
        }
    }
    
    /**
     * True if has "SESSCOOKIE" element
     */
    public boolean isSetSESSCOOKIE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            return get_store().count_elements(SESSCOOKIE$14) != 0;
        }
    }
    
    /**
     * Sets the "SESSCOOKIE" element
     */
    public void setSESSCOOKIE(java.lang.String sesscookie)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(SESSCOOKIE$14, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(SESSCOOKIE$14);
            }
            target.setStringValue(sesscookie);
        }
    }
    
    /**
     * Sets (as xml) the "SESSCOOKIE" element
     */
    public void xsetSESSCOOKIE(net.ofx.types.x2003.x04.SessionCookieType sesscookie)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.SessionCookieType target = null;
            target = (net.ofx.types.x2003.x04.SessionCookieType)get_store().find_element_user(SESSCOOKIE$14, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.SessionCookieType)get_store().add_element_user(SESSCOOKIE$14);
            }
            target.set(sesscookie);
        }
    }
    
    /**
     * Unsets the "SESSCOOKIE" element
     */
    public void unsetSESSCOOKIE()
    {
        synchronized (monitor())
        {
            check_orphaned();
            get_store().remove_element(SESSCOOKIE$14, 0);
        }
    }
    
    /**
     * Gets the "APPID" element
     */
    public java.lang.String getAPPID()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(APPID$16, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "APPID" element
     */
    public net.ofx.types.x2003.x04.ApplicationIdType xgetAPPID()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.ApplicationIdType target = null;
            target = (net.ofx.types.x2003.x04.ApplicationIdType)get_store().find_element_user(APPID$16, 0);
            return target;
        }
    }
    
    /**
     * Sets the "APPID" element
     */
    public void setAPPID(java.lang.String appid)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(APPID$16, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(APPID$16);
            }
            target.setStringValue(appid);
        }
    }
    
    /**
     * Sets (as xml) the "APPID" element
     */
    public void xsetAPPID(net.ofx.types.x2003.x04.ApplicationIdType appid)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.ApplicationIdType target = null;
            target = (net.ofx.types.x2003.x04.ApplicationIdType)get_store().find_element_user(APPID$16, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.ApplicationIdType)get_store().add_element_user(APPID$16);
            }
            target.set(appid);
        }
    }
    
    /**
     * Gets the "APPVER" element
     */
    public java.lang.String getAPPVER()
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(APPVER$18, 0);
            if (target == null)
            {
                return null;
            }
            return target.getStringValue();
        }
    }
    
    /**
     * Gets (as xml) the "APPVER" element
     */
    public net.ofx.types.x2003.x04.IntegerType xgetAPPVER()
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.IntegerType target = null;
            target = (net.ofx.types.x2003.x04.IntegerType)get_store().find_element_user(APPVER$18, 0);
            return target;
        }
    }
    
    /**
     * Sets the "APPVER" element
     */
    public void setAPPVER(java.lang.String appver)
    {
        synchronized (monitor())
        {
            check_orphaned();
            org.apache.xmlbeans.SimpleValue target = null;
            target = (org.apache.xmlbeans.SimpleValue)get_store().find_element_user(APPVER$18, 0);
            if (target == null)
            {
                target = (org.apache.xmlbeans.SimpleValue)get_store().add_element_user(APPVER$18);
            }
            target.setStringValue(appver);
        }
    }
    
    /**
     * Sets (as xml) the "APPVER" element
     */
    public void xsetAPPVER(net.ofx.types.x2003.x04.IntegerType appver)
    {
        synchronized (monitor())
        {
            check_orphaned();
            net.ofx.types.x2003.x04.IntegerType target = null;
            target = (net.ofx.types.x2003.x04.IntegerType)get_store().find_element_user(APPVER$18, 0);
            if (target == null)
            {
                target = (net.ofx.types.x2003.x04.IntegerType)get_store().add_element_user(APPVER$18);
            }
            target.set(appver);
        }
    }
}
